export const identifiers = {
  keywords: {
    false: 'false',
    true: 'true',
  },
  /**
   * {@link https://arktype.io/docs/primitives#number Number}
   */
  number: {
    Infinity: 'Infinity',
    NaN: 'NaN',
    NegativeInfinity: 'NegativeInfinity',
    epoch: 'epoch',
    integer: 'integer',
    safe: 'safe',
  },
  /**
   * {@link https://arktype.io/docs/primitives Primitives}
   */
  primitives: {
    bigint: 'bigint',
    boolean: 'boolean',
    keywords: 'keywords',
    null: 'null',
    number: 'number',
    string: 'string',
    symbol: 'symbol',
    undefined: 'undefined',
    unit: 'unit',
  },
  /**
   * {@link https://arktype.io/docs/primitives#string String}
   */
  string: {
    NFC: 'NFC',
    NFD: 'NFD',
    NFKC: 'NFKC',
    NFKD: 'NFKD',
    alpha: 'alpha',
    alphanumeric: 'alphanumeric',
    base64: 'base64',
    capitalize: 'capitalize',
    creditCard: 'creditCard',
    date: 'date',
    digits: 'digits',
    email: 'email',
    epoch: 'epoch',
    hex: 'hex',
    integer: 'integer',
    ip: 'ip',
    iso: 'iso',
    json: 'json',
    lower: 'lower',
    normalize: 'normalize',
    numeric: 'numeric',
    parse: 'parse',
    preformatted: 'preformatted',
    regex: 'regex',
    semver: 'semver',
    trim: 'trim',
    upper: 'upper',
    url: 'url',
    uuid: 'uuid',
    v1: 'v1',
    v2: 'v2',
    v3: 'v3',
    v4: 'v4',
    v5: 'v5',
    v6: 'v6',
    v7: 'v7',
    v8: 'v8',
  },
  /**
   * {@link https://arktype.io/docs/type-api Type API}
   */
  type: {
    $: '$',
    allows: 'allows',
    and: 'and',
    array: 'array',
    as: 'as',
    assert: 'assert',
    brand: 'brand',
    configure: 'configure',
    default: 'default',
    describe: 'describe',
    description: 'description',
    equals: 'equals',
    exclude: 'exclude',
    expression: 'expression',
    extends: 'extends',
    extract: 'extract',
    filter: 'filter',
    from: 'from',
    ifEquals: 'ifEquals',
    ifExtends: 'ifExtends',
    infer: 'infer',
    inferIn: 'inferIn',
    intersect: 'intersect',
    json: 'json',
    meta: 'meta',
    narrow: 'narrow',
    onDeepUndeclaredKey: 'onDeepUndeclaredKey',
    onUndeclaredKey: 'onUndeclaredKey',
    optional: 'optional',
    or: 'or',
    overlaps: 'overlaps',
    pipe: 'pipe',
    select: 'select',
    to: 'to',
    toJsonSchema: 'toJsonSchema',
  },
};
